home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 6 / FM Towns Free Software Collection 6.iso / t_os / et / src / gaiji.c < prev    next >
Text File  |  1993-07-08  |  2KB  |  75 lines

  1. #include  <stdio.h> 
  2. #include  <string.h>
  3. #include  <stdlib.h>
  4. #include  <ctype.h>
  5.  
  6. void  set_s(int n, char *s_p);
  7. char  nl_a[] = {0x0d, 0x0a, '\0'};
  8. void  main()/*gaiji*/
  9. {
  10.   FILE  *File, *Temp;
  11.   int   i, j;
  12.   unsigned char n, u_a[16], v_a[16];
  13.   char  c_a[200], s_a[200];
  14.   
  15.   File = fopen("et.dot", "rb");
  16.   Temp = fopen("etg.h", "wb");
  17.   fseek(File, 16L, 0);
  18.   fread(&n, 1, 1, File);
  19.   fseek(File, 50L, 0);
  20.   for (j = 0; n; ) {
  21.     i = fgetc(File);
  22.     if (j % 2)
  23.       u_a[j/2] = i;
  24.     else
  25.       v_a[j/2] = i;
  26.     j++;
  27.     if (!(j % 32)) {
  28.       j = 0;
  29.       for (i = 0; i < 16; i++) {
  30.         if (!(i%8))
  31.           strcpy(s_a, "\t");
  32.         set_s(v_a[i], c_a);
  33.         strcat(c_a, ", ");
  34.         strcat(s_a, c_a);
  35.         if (!((i+1)%8)) {
  36.           strcat(s_a, nl_a);
  37.           fwrite(s_a, sizeof(char), strlen(s_a), Temp);
  38.         }
  39.       }
  40.       for (i = 0; i < 16; i++) {
  41.         if (!(i%8))
  42.           strcpy(s_a, "\t");
  43.         set_s(u_a[i], c_a);
  44.         strcat(c_a, ", ");
  45.         strcat(s_a, c_a);
  46.         if (!((i+1)%8)) {
  47.           strcat(s_a, nl_a);
  48.           fwrite(s_a, sizeof(char), strlen(s_a), Temp);
  49.         }
  50.       }
  51.       fseek(File, 2L, 1);
  52.       n--;
  53.     }
  54.   }
  55.   fclose(File);
  56.   fclose(Temp);
  57. }
  58. void  set_s(int n, char *s_p)/*gaiji*/
  59. {
  60.   int   i, j;
  61.   char  buf_a[10];
  62.   
  63.   i = 0;
  64.   do {
  65.     j = n % 10;
  66.     j += '0';
  67.     buf_a[i++] = j;
  68.     n /= 10;
  69.   } while (n);
  70.   for (i; i; i--)
  71.     *s_p++ = buf_a[i-1];
  72.   *s_p = '\0';
  73. }
  74.  
  75.